' This class is "generated" and will be overwritten.
' Your customizations should be made in ProductsRecord.vb

Imports System.Data.SqlTypes
Imports BaseClasses
Imports BaseClasses.Data
Imports BaseClasses.Data.SqlProvider

Namespace Training1.Business

''' <summary>
''' The generated superclass for the <see cref="ProductsRecord"></see> class.
''' </summary>
''' <remarks>
''' This class is not intended to be instantiated directly.  To obtain an instance of this class, 
''' use the methods of the <see cref="ProductsTable"></see> class.
''' </remarks>
''' <seealso cref="ProductsTable"></seealso>
''' <seealso cref="ProductsRecord"></seealso>

<Serializable()> Public Class BaseProductsRecord
	Inherits PrimaryKeyRecord
	

	Public Shared Shadows ReadOnly TableUtils As ProductsTable = ProductsTable.Instance

	' Constructors
 
	Protected Sub New()
		MyBase.New(TableUtils)
	End Sub

	Protected Sub New(ByVal record As PrimaryKeyRecord)
		MyBase.New(record, TableUtils)
	End Sub







#Region "Convenience methods to get/set values of fields"

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ProductID field.
	''' </summary>
	Public Function GetProductIDValue() As ColumnValue
		Return Me.GetValue(TableUtils.ProductIDColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ProductID field.
	''' </summary>
	Public Function GetProductIDFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.ProductIDColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ProductName field.
	''' </summary>
	Public Function GetProductNameValue() As ColumnValue
		Return Me.GetValue(TableUtils.ProductNameColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ProductName field.
	''' </summary>
	Public Function GetProductNameFieldValue() As String
		Return CType(Me.GetValue(TableUtils.ProductNameColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ProductName field.
	''' </summary>
	Public Sub SetProductNameFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.ProductNameColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ProductName field.
	''' </summary>
	Public Sub SetProductNameFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.ProductNameColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Function GetSupplierIDValue() As ColumnValue
		Return Me.GetValue(TableUtils.SupplierIDColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Function GetSupplierIDFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.SupplierIDColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Sub SetSupplierIDFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.SupplierIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Sub SetSupplierIDFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.SupplierIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Sub SetSupplierIDFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SupplierIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Sub SetSupplierIDFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SupplierIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Sub SetSupplierIDFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.SupplierIDColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Function GetCategoryIDValue() As ColumnValue
		Return Me.GetValue(TableUtils.CategoryIDColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Function GetCategoryIDFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.CategoryIDColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Sub SetCategoryIDFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.CategoryIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Sub SetCategoryIDFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.CategoryIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Sub SetCategoryIDFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.CategoryIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Sub SetCategoryIDFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.CategoryIDColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Sub SetCategoryIDFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.CategoryIDColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.QuantityPerUnit field.
	''' </summary>
	Public Function GetQuantityPerUnitValue() As ColumnValue
		Return Me.GetValue(TableUtils.QuantityPerUnitColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.QuantityPerUnit field.
	''' </summary>
	Public Function GetQuantityPerUnitFieldValue() As String
		Return CType(Me.GetValue(TableUtils.QuantityPerUnitColumn).ToString(), String)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.QuantityPerUnit field.
	''' </summary>
	Public Sub SetQuantityPerUnitFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.QuantityPerUnitColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.QuantityPerUnit field.
	''' </summary>
	Public Sub SetQuantityPerUnitFieldValue(ByVal val As String)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.QuantityPerUnitColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Function GetUnitPriceValue() As ColumnValue
		Return Me.GetValue(TableUtils.UnitPriceColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Function GetUnitPriceFieldValue() As Decimal
		Return CType(Me.GetValue(TableUtils.UnitPriceColumn).ToDecimal(), Decimal)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Sub SetUnitPriceFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.UnitPriceColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Sub SetUnitPriceFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.UnitPriceColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Sub SetUnitPriceFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitPriceColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Sub SetUnitPriceFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitPriceColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Sub SetUnitPriceFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitPriceColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Function GetUnitsInStockValue() As ColumnValue
		Return Me.GetValue(TableUtils.UnitsInStockColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Function GetUnitsInStockFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.UnitsInStockColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Sub SetUnitsInStockFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.UnitsInStockColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Sub SetUnitsInStockFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.UnitsInStockColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Sub SetUnitsInStockFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsInStockColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Sub SetUnitsInStockFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsInStockColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Sub SetUnitsInStockFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsInStockColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Function GetUnitsOnOrderValue() As ColumnValue
		Return Me.GetValue(TableUtils.UnitsOnOrderColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Function GetUnitsOnOrderFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.UnitsOnOrderColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Sub SetUnitsOnOrderFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.UnitsOnOrderColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Sub SetUnitsOnOrderFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.UnitsOnOrderColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Sub SetUnitsOnOrderFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsOnOrderColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Sub SetUnitsOnOrderFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsOnOrderColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Sub SetUnitsOnOrderFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.UnitsOnOrderColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Function GetReorderLevelValue() As ColumnValue
		Return Me.GetValue(TableUtils.ReorderLevelColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Function GetReorderLevelFieldValue() As Int32
		Return CType(Me.GetValue(TableUtils.ReorderLevelColumn).ToInt32(), Int32)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Sub SetReorderLevelFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.ReorderLevelColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Sub SetReorderLevelFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.ReorderLevelColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Sub SetReorderLevelFieldValue(ByVal val As Double)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.ReorderLevelColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Sub SetReorderLevelFieldValue(ByVal val As Decimal)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.ReorderLevelColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Sub SetReorderLevelFieldValue(ByVal val As Int64)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.ReorderLevelColumn)
	End Sub
	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Function GetDiscontinuedValue() As ColumnValue
		Return Me.GetValue(TableUtils.DiscontinuedColumn)
	End Function

	''' <summary>
	''' This is a convenience method that provides direct access to the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Function GetDiscontinuedFieldValue() As Boolean
		Return CType(Me.GetValue(TableUtils.DiscontinuedColumn).ToBoolean(), Boolean)
	End Function

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Sub SetDiscontinuedFieldValue(ByVal val As ColumnValue)
		Me.SetValue(val, TableUtils.DiscontinuedColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Sub SetDiscontinuedFieldValue(ByVal val As String)
		Me.SetString(val, TableUtils.DiscontinuedColumn)
	End Sub

	''' <summary>
	''' This is a convenience method that allows direct modification of the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Sub SetDiscontinuedFieldValue(ByVal val As Boolean)
		Dim colValue As ColumnValue = New ColumnValue(val)
		Me.SetValue(colValue, TableUtils.DiscontinuedColumn)
	End Sub


#End Region

#Region "Convenience methods to get field names"

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.ProductID field.
	''' </summary>
	Public Property ProductID() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.ProductIDColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.ProductIDColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property ProductIDSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.ProductIDColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property ProductIDDefault() As String
        Get
            Return TableUtils.ProductIDColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.ProductName field.
	''' </summary>
	Public Property ProductName() As String
		Get 
			Return CType(Me.GetValue(TableUtils.ProductNameColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.ProductNameColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property ProductNameSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.ProductNameColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property ProductNameDefault() As String
        Get
            Return TableUtils.ProductNameColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.SupplierID field.
	''' </summary>
	Public Property SupplierID() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.SupplierIDColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.SupplierIDColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property SupplierIDSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.SupplierIDColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property SupplierIDDefault() As String
        Get
            Return TableUtils.SupplierIDColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.CategoryID field.
	''' </summary>
	Public Property CategoryID() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.CategoryIDColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.CategoryIDColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property CategoryIDSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.CategoryIDColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property CategoryIDDefault() As String
        Get
            Return TableUtils.CategoryIDColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.QuantityPerUnit field.
	''' </summary>
	Public Property QuantityPerUnit() As String
		Get 
			Return CType(Me.GetValue(TableUtils.QuantityPerUnitColumn).ToString(), String)
		End Get
		Set (ByVal Value As String) 
			Me.SetString(value, TableUtils.QuantityPerUnitColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property QuantityPerUnitSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.QuantityPerUnitColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property QuantityPerUnitDefault() As String
        Get
            Return TableUtils.QuantityPerUnitColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.UnitPrice field.
	''' </summary>
	Public Property UnitPrice() As Decimal
		Get 
			Return CType(Me.GetValue(TableUtils.UnitPriceColumn).ToDecimal(), Decimal)
		End Get
		Set (ByVal val As Decimal) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.UnitPriceColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property UnitPriceSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.UnitPriceColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property UnitPriceDefault() As String
        Get
            Return TableUtils.UnitPriceColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.UnitsInStock field.
	''' </summary>
	Public Property UnitsInStock() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.UnitsInStockColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.UnitsInStockColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property UnitsInStockSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.UnitsInStockColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property UnitsInStockDefault() As String
        Get
            Return TableUtils.UnitsInStockColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.UnitsOnOrder field.
	''' </summary>
	Public Property UnitsOnOrder() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.UnitsOnOrderColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.UnitsOnOrderColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property UnitsOnOrderSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.UnitsOnOrderColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property UnitsOnOrderDefault() As String
        Get
            Return TableUtils.UnitsOnOrderColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.ReorderLevel field.
	''' </summary>
	Public Property ReorderLevel() As Int32
		Get 
			Return CType(Me.GetValue(TableUtils.ReorderLevelColumn).ToInt32(), Int32)
		End Get
		Set (ByVal val As Int32) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.ReorderLevelColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property ReorderLevelSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.ReorderLevelColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property ReorderLevelDefault() As String
        Get
            Return TableUtils.ReorderLevelColumn.DefaultValue
        End Get
    End Property

	''' <summary>
	''' This is a convenience property that provides direct access to the value of the record's Products_.Discontinued field.
	''' </summary>
	Public Property Discontinued() As Boolean
		Get 
			Return CType(Me.GetValue(TableUtils.DiscontinuedColumn).ToBoolean(), Boolean)
		End Get
		Set (ByVal val As Boolean) 
			Dim colValue As ColumnValue = New ColumnValue(val)
			Me.SetValue(colValue, TableUtils.DiscontinuedColumn)
		End Set
	End Property


	''' <summary>
	''' This is a convenience method that can be used to determine that the column is set.
	''' </summary>
	Public ReadOnly Property DiscontinuedSpecified() As Boolean
        Get
            Dim val As ColumnValue = Me.GetValue(TableUtils.DiscontinuedColumn)
            If val Is Nothing OrElse val.IsNull Then
                Return False
            End If
            Return True
        End Get
    End Property

	''' <summary>
	''' This is a convenience method that can be used to get the default value of a column.
	''' </summary>
    Public ReadOnly Property DiscontinuedDefault() As String
        Get
            Return TableUtils.DiscontinuedColumn.DefaultValue
        End Get
    End Property



#End Region

End Class
End Namespace
